#include<bits/stdc++.h>
using namespace std;
const int N=(1<<20)+100;
using ll=long long;
using ul=unsigned long long;
using vt=vector<int>;
int T,n,m,a[N],b[N],d[35][35],v[35][35],ans;
char c[35][35];
int d1[N][18],X,Y;
string s;
int main(){
    ios::sync_with_stdio(false),cin.tie(0);
    freopen("snake.in","r",stdin);
    freopen("snake.out","w",stdout);
    int i,j,k,l,r,x,y,z;
    cin>>s,n=15;
    m=s.size(),s='b'+s;
    for(x=1;x<=n;++x)
        if(x%6==1||x%6==0){
            for(i=1;i<=n;++i)
                if(i%6==1||i%6==0)c[x][i]='R';
                else if(i%6==2||i%6==5)c[x][i]='G';
                else c[x][i]='B';
        }else if(x%6==2||x%6==5){
            for(i=1;i<=n;++i)
                if(i%6==1||i%6==0)c[x][i]='B';
                else if(i%6==2||i%6==5)c[x][i]='G';
                else c[x][i]='R';
        }else{
            for(i=1;i<=n;++i)
                if(i%6==1||i%6==0)c[x][i]='G';
                else if(i%6==2||i%6==5)c[x][i]='R';
                else c[x][i]='B';
        }
    printf("%d %d\n",n,n);
    for(x=1;x<=n;++x){
        for(y=1;y<=n;++y)putchar(c[x][y]);
        puts("");
    }
    for(x=1;x<=n;++x)
        for(y=1;y<=n;++y)d[x][y]=1;
    for(i=m;i;--i){
        for(x=1;x<=n;++x)
            for(y=1;y<=n;++y)   
                v[x][y]=d[x][y],d[x][y]=0;
        for(x=1;x<=n;++x)
            for(y=1;y<=n;++y)
                if(c[x][y]==s[i])
                    if(d[x][y]=v[x-1][y]||v[x][y-1]||v[x+1][y]||v[x][y+1])
                        d1[i][x]|=1<<y;
    }
    for(X=1;X<=n;++X)
        for(Y=1;Y<=n;++Y)
            if((d1[1][X]>>Y)&1)goto lc1;
    lc1:printf("%d %d\n",X,Y);
    for(i=2;i<=m;++i){
        if((d1[i][X-1]>>Y)&1)--X,putchar('U');
        else if((d1[i][X+1]>>Y)&1)++X,putchar('D');
        else if((d1[i][X]>>Y-1)&1)--Y,putchar('L');
        else ++Y,putchar('R');
    }
    return 0;
}